
var AudienceCode = {
    id: "AudienceCodeTable",	//表格id
    seItem: null,		//选中的条目
    table: null,
    layerIndex: -1
};



/**
 * 初始化表格的列
 */
AudienceCode.initColumn = function () {
    return [
        {title: '序号',align : 'center',valign : 'middle',width:20,radio: false,checkbox:false,formatter:function (value, row, index) {  return index+1; } },
        {title: 'ID', field: 'id',width:60,visible: false, sortable: true, align: 'center', valign: 'middle'},
        {title: '类别', field: 'type', width:100,visible: true, sortable: true, align: 'center', valign: 'middle'},
        {title: '编码', field: 'code', width:120,visible: true, sortable: true, align: 'center', valign: 'middle'},
        {title: '名称', field: 'name',width:80, visible: true, sortable: true, align: 'center', valign: 'middle'},
        {title: '操作', field: '', width:120,align: 'center', valign: 'middle', sortable: true,formatter:AudienceCode.editFormatter}
    ];
};
/**
 * 编辑列 自定义
 */
AudienceCode.editFormatter=function (value, row, index){
    var btnArr =[];
    var btnUpdate =  {clickEvent:'AudienceCode.openEditAudienceCode('+row.id+');',title:'修改',icon:HsetIcon['update'],active:false};
    var btnDelete =  {clickEvent:'AudienceCode.delete('+row.id+');',title:'删除',icon:HsetIcon['delete'],active:false};
    if(Authority.update==true){
        btnUpdate.active=true;
    }
    if(Authority.delete==true){
        btnDelete.active=true;
    }

    btnArr.push(btnUpdate);
    btnArr.push(btnDelete);
    return HsetIcon.createGroup(btnArr);
};
/**
 * 修改
 */
AudienceCode.openEditAudienceCode = function (id) {
    var index = layer.open({
        type: 2,
        shade: [0.5,'FFFFFF'],
        title: '修改',
        area: ['800px', '300px'], //宽高
        fix: false, //不固定
        maxmin: true,
        offset:'10px',
        content: Feng.ctxPath + "/audienceCode/audienceCode_update/"+id
    });
    this.layerIndex = index;
};
/**
 * 新增
 */
AudienceCode.openAddAudienceCode = function () {
    var index = layer.open({
        type: 2,
        shade: [0.5,'FFFFFF'],
        title: '新增',
        area: ['800px', '300px'], //宽高
        fix: false, //不固定
        maxmin: true,
        offset:'10px',
        content: Feng.ctxPath + "/audienceCode/audienceCode_add/"
    });
    this.layerIndex = index;
};
/**
 * 删除
 */
AudienceCode.delete = function (id) {
    Feng.confirm("确认要删除吗?",ensure);
    function ensure() {
        var ajax = new $ax(Feng.ctxPath + "/audienceCode/delete/"+id, function (data) {
            Feng.success("删除成功!");
            AudienceCode.table.refresh();
        }, function (data) {
            Feng.error("删除失败!" + data.responseJSON.message + "!");
        });
        ajax.start();
    }
};
/**
 * 自定义按钮组
 */
AudienceCode.btnGroup=function(){
    var arr=[];
    if(Authority['add']==true) {//新增
        arr.push({clickEvent: 'AudienceCode.openAddAudienceCode();', title: '新增', icon: HsetIcon['add']});
    }
    return arr;
};

/**
 * 普通搜索 整合查询数据
 * @returns {{}}
 */
AudienceCode.normalAudienceData=function(){
    //清空高级搜索 勿删！！
    AudienceCode.highResetSearch();
    //初始为已清空的 高级搜索条件 即所有条件都为空
    var queryData =AudienceCode.highAudienceData() ;
    // {搜索字段:搜索字段值}


    var values = $('#normalFieldName').val().split(';');
    for (var i = 0; i < values.length; i++) {
        queryData[values[i]] =  $.trim($('.normalSearchGroup [name="'+values[i]+'"]').val());
    }
    return queryData;
};
/**
 * 高级搜索 整合查询数据
 * @returns {{}}
 */
AudienceCode.highAudienceData=function(){
    var queryData = {};
    $.each($('.highSearchGroup input'),function () {
        queryData[this.name] = $.trim(this.value);
    });
    $.each($('.highSearchGroup select'),function () {
        queryData[this.name] = $.trim(this.value);
    });
    return queryData;
};
/**
 * 普通搜索
 */
AudienceCode.normalSearch = function () {
    AudienceCode.table.refresh({query: AudienceCode.normalAudienceData()});
};
/**
 * 高级搜索
 */
AudienceCode.highSearch = function () {
    AudienceCode.table.refresh({query: AudienceCode.highAudienceData()});
};
/**
 * 高级搜索 清空
 */
AudienceCode.highResetSearch = function () {
    //隐藏 input
    $.each($('.highSearchGroup input'),function () {
        $(this).val('');
    });
    //隐藏 select
    $.each($('.highSearchGroup select'),function () {
        $(this).val('');
        $(this).trigger("chosen:updated");
    });
};
/**
 * 绑定事件
 */
AudienceCode.bind=function(){
    //普通搜索字段change事件
    $('#normalFieldName').bind('change',function(){
        //隐藏 input
        $.each($('.normalSearchGroup input'),function () {
            $(this).val('');
            $(this).parents('.form-horizontal').eq(0).hide();
        });
        //隐藏 select
        $.each($('.normalSearchGroup select'),function () {
            $(this).val('');
            $(this).parents('.form-horizontal').eq(0).hide();
        });
        //显示当前搜索条件
        var values = this.value.split(';');
        for (var i = 0; i < values.length; i++) {
            $('.normalSearchGroup [name="'+values[i]+'"]').parents('.form-horizontal').eq(0).show();
        }
    });
};
$(function () {
    AudienceCode.bind();
    var defaultColunms = AudienceCode.initColumn();
    var table = new BSTable(AudienceCode.id, "/audienceCode/list", defaultColunms);
    table.setPaginationType("client");
    table.setBtnGroup(AudienceCode.btnGroup());
    AudienceCode.table = table.init();
});
